caeonsfandomcom-20200215-history
Exec functions
Overview Exec functions are special types of functions that are defined within classes using UnrealScript. These functions can be executed by the user at runtime by bringing up the in-game console while the engine is running (usually by pressing the ~ key) and typing in the name of the function followed by any parameters it may require. These functions are similar to console commands in that they can be executed from the console, but differ due to the fact that they are defined in script and can be easily added, modified or removed. Classes that are scanned for exec functions are (including all subclasses): *Input *Controller *Pawn *InventoryManager *Weapon *HUD *GameInfo *CheatManager *GameViewportClient *Interaction - Interactions placed into a PlayerController's Interactions array will be executed, but will not show up in the console command completion Creating new exec functions To add new exec functions so that it can be mapped to a key, is as simple as adding "exec" in front of the function. The example below shows how to add a parameterized exec function. ExamplePawn.uc exec function MyExecFunction(int ParameterA) { `Log("The user executed my custom function with "$ParameterA); } Altering *Input.ini ---- Adding a new exec function to your own classes will allow the console to execute those functions, but often you will want to bind them directly to a key. The way that this is done is by adding the key binding into your *Input.ini. The * is the prefix, and it may be Default (if you wish to add a default key bind) or UDK (if you wish to add a non default, UDK specific key bind). These configuration files are often found in %UDK_ROOT%\UDKGame\Config\ (Where UDKGame will be your game project folder). To add a new key bind, ensure to insert it under the Engine.PlayerInput configuration group. The example below shows how to add a key bind to H, running the custom exec function with a parameter defined in the example above. .Bindings=(Name="H",Command="MyExecFunction 99") Existing engine exec functions ---- The exec functions listed below are all found in the base engine classes. Game administration These functions allow you to administer the current game. Many of these functions require you to be logged in as the administrator on the server, while some only require that you have certain privileges. *Admin command – This executes an admin command on a server where you are logged in as the administrator. *Kick command users – Remove a user from the game. A user can either be their ID (as shown by the Kick list command) or a name (* can be used as a wild card). The command is optional and can be one of the following: **List – display all players and their IDs **Ban – do not allow the player to return **Session – ban the user for this game only *KickBan users – Remove a user from the game and do not allow them to return. A user can either be their ID (as shown by the Kick list command) or a name (* can be used as a wild card). *KillBots – Remove all bots from the game. *PlayerList – Display all player names along with their ping times. *RestartMap – Restart the current map. *Switch map – Tell the server to change levels based on the value of map. Map is parsed as a map URL (see CommandLineArguments for more detailed information about map URLs). Cheats These functions are considered to be cheats in most games, but are often useful for development reasons. *AffectedByHitEffects – Makes the player immune to all hit effects (i.e., momentum, hit effects, etc.). *AllAmmo – Sets ammo counts to maximum on all weapons *AllWeapons – Gives the player all the weapons available in the game. *Amphibious - Causes the player to be able to stay underwater virtually indefinitely (sets Paw.UnderwaterTime = 999999.0). *EnableCheats - Enables cheats within the game *Fly - Causes the player to be able to fly in place of walking. *FreezeFrame delay - Force the game to pause for the specified delay time. *Ghost - Puts the player into a ‘ghostly’ state where they can fly, pass through geometry, and are not affected by damage. *GiveWeapon weaponclass - Give an instance of the specified weaponclass to the player. *God - Puts the player into a state where they are no longer affected by damage. *KillAll class - Kills or destroys all instances of the specified class in the level. *KillPawns - Kills all pawns within the level. *KillViewActor - Kills or destroys the actor that is currently set as the ViewTarget. *Loaded - Gives the player all the weapons available and full ammo on those weapons. This is identical to calling AllWeapons and then AllAmmo. *PlayersOnly - Set the world to only update players, ignoring all other actors. *SetGravity amount - Set the gravity in the Z axis to the specified amount. *SetJumpZ height - Set the vertical distance a the player can jump to the given height. *SetSpeed multiplier - Multiply the player’s default ground and water speed by the given multiplier. *Slomo speed - Set the game speed to the given speed. *Summon classname - Summon or spawn an instance of the specified classname (this is a package.class string). *Teleport - Teleports the player to the surface they are look at. *Walk - Sets the player back to the default walking state. Debug commands These functions are often useful for debugging at run time. *Avatar classname - Possess a pawn of the specified classname (this is a name type). *BugItGo X Y Z Pitch Yaw Roll - Move the player to the location (X, Y, Z) and rotation (Pitch, Yaw, Roll) specified for the purposes of viewing submitted BugIt bugs. *CauseEvent EventName - Trigger a Kismet event with the given EventName. *CE EventName - Trigger a console event with the given EventName. *ChangeSize multiplier - Set the player’s size to be multiplier times the default player size. *ClearProgressMessages - Clear all progress messages; setting them to an empty string. *ConsoleKey key - Send a key press of the given key to the input system from the console. This is useful for remote debugging when you do not have access to the local keyboard for input. *CrowdDebug bEnable - Toggle display of post render info for crowd agents. *CrowdFocus - Show post render info for nearby, visible crowd agents. *CrowdToggle - Toggle all crowd managers on or off. *DebugCreatPlayer controllerid - Create a player accepting input from the controller with the given controllerid. *DebugPause - Logs the current pause state of the game in progress. *DebugRemovePlayer controllerid - Remove the player accepting input from the controller with the given controllerid. *DestroyFractures radius - Cause all fractured static meshes within the specified radius to break apart. Radius is optional and defaults to 256.0 units. *DumpOnlineSessionState - Logs the current session state for the gametype and online layer. *DumpVoiceMutingState - Logs the current muting state of the server. *EndPath - Stop interpolation. *FractureAllMeshes - Causes at least one fragment of all fractured static meshes within the level to be broken off. *FractureAllMeshesToMaximizeMemoryusage - Causes all fractured static meshes within the level to break in such a way that it maximizes memory usage. *FXPlay class anim - Find the nearest pawn of the given class and play the specified FaceFX anim. *FXStop class - Find the nearest pawn of the given class and stop all currently playing FaceFX anims. *ListConsoleEvents - Display a list of all console events on the HUD. *ListCE - Display a list of all console events on the HUD. *ListDynamicActors - Outputs a list of all dynamic actors (actors which were created after the start of the level) to the log. *LogLoc - Logs the current location of the player in BugIt format, but without taking a screenshot or further actions. *MoreSpeed - Forces the player into a running state. *NormalSpeed - Forces the player into a walking state. *NavMeshVerification - Enables a timer to do periodic navigation mesh verification. *PathChild count - Move one step along the current path for debugging purposes. *PathClear - Clear all debugging path info. *PathStep count - Move one step along the current path for debugging purposes. *RefreshFormatting - Force a formatting update and scene refresh for the active UIScene. *RememberSpot - Designate the current location as a spot to be remembered for path testing. *RemoteEvent EventName - Trigger a remote event in Kismet with the given EventName from the console. *RE EventName - Trigger a remote event in Kismet with the given EventName from the console. *SaveActorConfig actorname - Save the config for the actor with its name matching the specified actorname. *SaveClassConfig classname - Save the config for the given classname. *SendToConsole command - Execute the given console command. *SetConsoleTarget playerindex - Set the player (selected from the GamePlayers array by playerindex) which console commands will be executed in the context of. *SetFreezeRendering - Toggles the FREEZERENDERING console command to freeze the rendering state. *SetOnlineDebugLevel level - Set the OS-specific logging level to the given level (this is an integer). *SetSplit mode - Set the splitscreen configuration to the specified ESplitScreenType mode. *ShowDatatStoreField markup - Output the value for the datastore with the given markup to the log. *ShowDataStores bVerbose - Output all registered datastores to the log. If bVerbose is specified and set to True, detailed information about each datastore is displayed. *ShowDebug debugtype - Toggle the display of properties of the player’s current ViewTarget. If debugtype is specified, it toggles that specific type but leaves the overall display of properties enabled. If not specified, the overall display is toggled. *ShowDebugSelectedInfo - Toggles the display of information about the actor the debug camera is viewing. *ShowDockingStacks - Display the docking stacks of all active UIScenes. *ShowGameDebug - Toggles the display of GameInfo debug information. *ShowGameState - Dumps the current state stack for the GameInfo to the log. *ShowPlayerState - Dumps the state stack for the player to the log. *ShowTileSafeArea - Draw the tile safe zone on the viewport. *SSSwapControllers - Rotates controller IDs among players. This can be used to test splitscreen multiplayer with only one controller. *StreamLevelIn level - Stream in the given level; *StreamLevelOut level - Stream out the given level. *TestLevel - Check all actors within the current level for errors. *TestNavMeshPath bDrawPath - Attempts to calculate a path from the player’s current position to the location the player is looking at. If bDrawPath is true, the path will be displayed on screen (this is optional and the default is True). *ToggleDebugCamera - Switch between the player camera and the debug camera without locking gameplay, but with locking of the local player’s input. *ToggleDebutInput - Toggles debug input processing. *UTrace - Toggles tracing/logging of script function calls. *VerbosePathDebug - Display the results of a TraceActors interation from the player’s current viewpoint to a distance of 10000 units. *ViewActor actorname - Set the actor with the given actorname as the current ViewTarget and change to 3rd person view. *ViewBot - Sets the ViewTarget of the player to be the first bot not currently set as the Viewtarget. *ViewClass class - Sets the ViewTarget of the player to be the first instance of the given class not currently set as the ViewTarget. *ViewFlag - Sets the ViewTarget of the player to be the flag carrier, if one exists. *ViewPlayer playername - Sets the player with the given playername to be the ViewTarget. *ViewSelf bQuiet - Sets the ViewTarget of the player back to its pawn. If bQuiet is false, a message is displayed to the player (this is optional and defaults to false). *WriteToLog message - Outputs the message to the log appending it with “NOW! “. Player commands *Jump - Causes the player to jump. *LocalTravel mapURL - Causes the client to travel to the given mapURL. *Mutate command - Passes the given command through the mutator list. *QuickLoad - Load the save game created by the QuickSave exec function. *QuickSave - Create a save game for the game in progress. *RestartLevel - Restarts the current level. *ShowMenu - Not implemented. *SmartJump - Causes the player to jump. *Suicide - Causes the player to commit suicide. Gameplay commands *Pause - Toggle the paused state of the game. Settings *Camera mode - Change the player’s camera to the given mode (i.e. “1st” or “3rd”). *ChangeTeam teamname - Change the player’s current team to the specified teamname (this is a string holding the team’s color, i.e. “red or “blue”). *ClearSmoothing - Clears mouse smoothing. *FOV fovangle - Set the field of view of the player’s camera to the given fovangle. *InvertMouse - Toggles inverting the mouse input. *InvertTurn - Toggles inverted turning. *SetBind bindname command - Creates a new key bind for the given command with the specified bindname. *SetName name - Sets the player’s name to the given name. *SetSensitivity sensitivity - Set the mouse sensitivity to the specified sensitivity. *SetShowSubtitles bShowSubtitles - Shows or hides subtitles based on the value of bShowSubtitles. *SwitchTeam - Switches the player from its current team to the other team. Inventory *NextWeapon - Switch the player’s weapon to the next weapon in the inventory. *PrevWeapon - Switch the player’s weapon to the previous weapon in the inventory. *StartFire firemode - Fire the player’s currently selected weapon with the optional firemode. *StartAltFire firemode - Fire the player’s currently selected weapon using the alternate fire mode. *StopFire firemode - Stop firing the player’s currently selected weapon with the optional firemode. *StopAltFire firemode - Stop firing the player’s currently selected weapon using the alternate fire mode. *SwitchToBestWeapon bForceNewWeapon - Attempts to change the player’s weapon to the best weapon in the player’s inventory. If bForceNewWeapon is true, the new weapon will be a different weapon than the one currently being used, assuming the player has more than one weapon at the time (this is optional and defaults to False). *ThrowWeapon - Throw the player’s current weapon and switch to a new weapon. *Use - Cause the player to interact, or attempt to interact, with any level objects the player is touching. Communication *Say message - Send the specified message to all players *Speech type index callsign - Sends a voice message of the given type to the specified player. *Talk - Opens a tiny console populated with “Say “ to send a message. *TeamSay message - Send the specified message to all team members. *TeamTalk - Opens a tiny console populated with “TeamSay “ to send a team message HUD *ToggleHUD - Toggles the visibility of all HUD items. *ShowHUD - Toggles the visibility of all HUD items. *ShowScores - Toggle the visibility of the scoreboard. *SetShowScores - Set the visibility status of the scoreboard to bShowScores. UTGame The exec functions listed in this section are only found in the UTGame classes and are not available in the base engine. Game Administration *AdminChangeMap [mapURL - Change the map using the given mapURL. *AdminForceTextMute user - Prevent the user from sending text messages. *AdminForceTextUnMute user - Allow the user to send text messages *AdminForceVoiceMute user - Prevent the user from sending voice messages. *AdminForceVoiceUnMute user - Allow the user to send voice messages. *AdminKick user - Kick the given user from the game. *AdminKickBan user - Kick and ban the given user from the game. *AdminLogin password - Log in as server admin using the given password. This is required for some exec commands to work. *AdminLogout - Log out as server admin. *AdminPlayerList - Displays the list of all players as client messages. *AdminRestartMap - Restarts the current map. *Disconnect - Disconnect and return to the main menu. Cheats *EditWeapon weapon - Opens a property window for editing the properties of the given weapon. If no weapon is specified, all available weapons are output to the log. *FreeCamera - Sets the player’s camera to the free orbital camera mode. *Glow amount - Set the AmbientGlow for all instances of the UTVehicle class in the level to the given amount (LinearColor of amount, amount, amount, 1.0). *Invisible bInvisible - Set visible or invisible depending on the value of bInvisible. *KillBadGuys - Kills all pawns not on the same team as the player. *KillOtherBots - Kills all the bots in the level that are not currently the view target of the player. *KillOthers - Kill all players in the level except for the local player. *KillThis - Kill the local player. *LM messageclass - Set the local message class to the given messageclass. *LMS switch - Cause the player to receive the local message specified by the current local message class and the given switch. *PhysicsGun - Gives the player the physics gun. *RBGrav gravityscaling - Sets the rigid body gravity scaling for the level to the given gravityscaling value. *SetStickBind value - Set the control stick bindings to the given value. *ShowStickBindings - Output all current control stick bindings to the log. *SpawnABloodDecal - Spawns a blood decal at the player’s current location. *SuicideBy damagetype healthvalue - Cause the player to commit suicide using the given damagetype and healthvalue to test death effects. *SummonV classname - Summon the vehicle specified by the given classname. *TiltIt bActive - Sets tilt active or inactive for the player based on the value of bActive. Debugging *AddBots number - Adds the given number of bots to the level for testing purposes. *AddBlueBots number - Add the given number of bots to the blue team in a team game *AddNamedBot name bUseTeamNum teamnum - Add a bot with the given name. If bUseTeamNum is True and a teamnum is specified, add the bot to the given team. *AddRedBots number - Add the given number of bots to the red team in a team game. *AdjustCameraScale bIn - Moves the camera in or out depending on the value of bIn. *AngDriveDamp amount - Set the angular damping scale for the player’s physics asset to the given amount. *AngDriveSpring amount - Set the angular spring scale for the player’s physics asset to the given amount. *BackDamp amount - Set the damping scale for the back of the player’s physics asset to amount. *BackSpring amount - Set the spring scale for the back of the player’s physics asset to amount. *DebugViewAcceleration - Toggles display of view acceleration info. *DebugTargetAdhesion - Toggles display of target adhesions info. *DebugTargetFriction - Toggles display of target friction info. *FixedView visiblemeshes - Toggle the player’s view as being fixed. If visiblemeshes is “yes”, “true”, or “1”, then meshes will be visible. *FlushDebug - Flushes any persistent debug drawing. *GetPlayerLoc - Outputs the location and rotation of the player to the log. *HandDamp amount - Set the damping scale for the hands of the player’s physics asset to amount. *HandSpring amount - Set the spring scale for the hands of the player’s physics asset to amount. *LinDriveDAmp springamount dampamount - Set the linear damping scale for the player’s physics asset to the given dampamount. *LinDriveSpring springamount dampamount - Set the linear spring scale for the player’s physics asset to the given springamount. *StartMusic - Spawn new music manager if none exists and start playing music. *TestResetPhys - Resets the player’s physics state. *UnlockChapter chapter - Unlocks the given chapter for testing purposes. *ViewObjective - View the current objective. *ViewPlayerByName playername - Set the player with the given playername as the current ViewTarget. Gameplay *BecomeActive - Go from spectating a match to being a player in the match. *DropFlag - Forces the player to drop the flag, if carrying it. *Duck - Make the player duck, or crouch. *PlayVehicleHorm - Plays the horn of the vehicle the player is driving. *RetrieveSettingsFromProfile - Loads the player’s settings from the current profile. *SetAutoTaunt bAutoTaunt - Sets the player’s auto taunt value to the given value of bAutoTaunt. *Taunt tauntindex - Plays the taunt specified by the tauntindex. *UnDuck - Make the player leave the crouched state. Communication *ToggleSpeaking bOn - Turn voice recognition on or off based on the value of bOn. HUD *GrowHUD - Add missing elements to the HUD. *ShrinkHUD - remove elements from the HUD. *ReleaseShowScores - Toggle displaying the scoreboard. *SetShowScores bShowScores - Show or hide the scoreboard based on the value of bShowScores. *ShowAllAI - Toggle the display of AI overlays in the HUD. *ShowSquadRoutes - Toggle display of squad routes. *ToggleMinimap - Toggles the display of the minimap on the HUD. *ToggleScreenShotMode - Toggles the display of all HUD elements for taking screenshots. Source Exec functions Category:UE3 Basics